﻿

#include "zyShapeBox.h"

DarkMoonUI::zyShapeBox::zyShapeBox()
{
	SetMember(L"this", (LONG_PTR)this);
	m_obj->setWndProc(zyShapeBox_WndProc);
	
}
DarkMoonUI::zyShapeBox::~zyShapeBox()
{

}

LRESULT WINAPI DarkMoonUI::zyShapeBox::zyShapeBox_WndProc(zyObject* obj, HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL* bHandle)
{
	if (uMsg == WM_ERASEBKGND) {
		HBRUSH BackBrush = (HBRUSH)obj->getPtrData(L"BackBrush");
		if (BackBrush != 0 && BackBrush != GetStockObject(NULL_BRUSH)) {
			RECT rect = { 0 };
			GetClientRect(hWnd, &rect);
			FillRect((HDC)wParam, &rect, BackBrush);
			*bHandle = true;
			return 1;
		}
	}
	return zyCommandCtrol::zyCommand_WndProc(obj, hWnd, uMsg, wParam, lParam, bHandle);
}
BOOL DarkMoonUI::zyShapeBox::创建(HWND 参数_父窗口, const std::wstring& 参数_标题, POINT 参数_位置, POINT 参数_尺寸, int 参数_ID, int 参数_窗口风格, int 参数_扩展风格)
{
	if (参数_窗口风格 == 0)
		参数_窗口风格 = SS_BLACKRECT;
	if (参数_ID == NULL)
		参数_ID = 黑月默认ID();

	bool ret = _CreateCtrol(参数_父窗口, 参数_标题, 参数_位置, 参数_尺寸, 参数_ID, 参数_窗口风格 | SS_NOTIFY, 参数_扩展风格, L"Static");
	背景色(GetSysColor(COLOR_BTNFACE));
	return ret;
}

BOOL DarkMoonUI::zyShapeBox::创建(zyWindow& 参数_父窗口, const std::wstring& 参数_标题, POINT 参数_位置, POINT 参数_尺寸, int 参数_ID, int 参数_窗口风格, int 参数_扩展风格)
{
	if (参数_窗口风格 == 0)
		参数_窗口风格 = SS_BLACKRECT;
	if (参数_ID == NULL)
		参数_ID = 黑月默认ID();
	bool ret =_CreateCtrol(参数_父窗口.getHwnd(), 参数_标题, 参数_位置, 参数_尺寸, 参数_ID, 参数_窗口风格 | SS_NOTIFY, 参数_扩展风格, L"Static");
	背景色(GetSysColor(COLOR_BTNFACE));
	return ret;
}